package com.javakc.pms.dispord.service.impl;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.javakc.pms.dispord.entity.DispOrd;
import com.javakc.pms.dispord.mapper.DisOrdMapper;
import com.javakc.pms.dispord.service.DispOrdService;
import com.javakc.pms.dispord.vo.DispOrdQuery;
import org.springframework.stereotype.Service;
import org.springframework.util.ObjectUtils;

@Service
public class DispOrdServiceImpl extends ServiceImpl<DisOrdMapper, DispOrd> implements DispOrdService {
    /**
     * 根据条件进行分页查询 - 调度指令库
     * @param dispOrdPage 分页封装对象
     * @param dispOrdQuery 查询条件封装对象
     */
    @Override
    public void findPageDispOrd(Page<DispOrd> dispOrdPage, DispOrdQuery dispOrdQuery) {
        QueryWrapper<DispOrd> queryWrapper = new QueryWrapper<>();
        if (!ObjectUtils.isEmpty(dispOrdQuery)) {
            if (!ObjectUtils.isEmpty(dispOrdQuery.getOrderName())) {
                queryWrapper.like("order_name", dispOrdQuery.getOrderName()); // 模糊查询 orderName
            }
            if (!ObjectUtils.isEmpty(dispOrdQuery.getSpecType())){
                queryWrapper.eq("spec_type",dispOrdQuery.getSpecType());
            }
            if (!ObjectUtils.isEmpty(dispOrdQuery.getPriority())){
                queryWrapper.eq("getPriority",dispOrdQuery.getPriority());
            }
        }
        // 设置排序  按照新增的时间降序  表中的字段
        queryWrapper.orderByDesc("gmt_create");
        // 查询  page类型  dispOrdPage 是 简单分页   queryWrapper是模糊查询
        baseMapper.selectPage(dispOrdPage, queryWrapper);
    }
}
